package org.neurone.userspace.dao;

import java.util.List;

import org.neurone.domain.Message;
import org.neurone.util.criteria.Criteria;

/**
 * @author 糖醋鼻子
 *
 */
public interface MessageDao {
	/**
	 * 取得一条消息的详细数据
	 * @param messageID
	 * @return
	 */
	Message find(Long messageID);
	/**
	 * 获取所有的消息
	 * @return
	 */
	List<Message> findAll(String messageType, int pageSize, int pageIndex);
	/**
	 * @param terms
	 * @param pageSize
	 * @param pageIndex
	 * @return
	 */
	List<Message> search(Criteria terms, int pageSize, int pageIndex);
	/**
	 * 新消息
	 * @param message
	 */
	Long newMessage(Message message);
	/**
	 * 删除指定消息
	 * @param messageID
	 */
	void deleteMessage(Long messageID);
	
	/**
	 * 更新指定消息
	 * @param message
	 */
	void updateMessage(Message message);
}
